PagerDuty

Parameters

The PagerDuty notification service is used to create PagerDuty incidents and requires specifying the following settings:

  • pagerdutyToken - the PagerDuty auth token
  • from - email address of a valid user associated with the account making the request.
  • serviceID - The ID of the resource.

Example

The following snippet contains sample PagerDuty service configuration:

  1. apiVersion: v1
  2. kind: Secret
  3. metadata:
  4. name: <secret-name>
  5. stringData:
  6. pagerdutyToken: <pd-api-token>
  1. apiVersion: v1
  2. kind: ConfigMap
  3. metadata:
  4. name: argocd-notifications-cm
  5. data:
  6. service.pagerduty: |
  7. token: $pagerdutyToken
  8. from: <emailid>

Template

Notification templates support specifying subject for PagerDuty notifications:

  1. apiVersion: v1
  2. kind: ConfigMap
  3. metadata:
  4. name: argocd-notifications-cm
  5. data:
  6. template.rollout-aborted: |
  7. message: Rollout {{.rollout.metadata.name}} is aborted.
  8. pagerduty:
  9. title: "Rollout {{.rollout.metadata.name}}"
  10. urgency: "high"
  11. body: "Rollout {{.rollout.metadata.name}} aborted "
  12. priorityID: "<priorityID of incident>"

NOTE: A Priority is a label representing the importance and impact of an incident. This is only available on Standard and Enterprise plans of pagerduty.

Annotation

Annotation sample for pagerduty notifications:

  1. apiVersion: argoproj.io/v1alpha1
  2. kind: Rollout
  3. metadata:
  4. annotations:
  5. notifications.argoproj.io/subscribe.on-rollout-aborted.pagerduty: "<serviceID for PagerDuty>"